Grafische Benutzerschnittstellen

Die Benutzerschnittstelle einer Anwendung setzt sich in der Regel aus Text- und Grafikobjekten zusammen und heisst deshalb auch Graphical User Interface (GUI). Die Entwicklung einer Benutzerschnittstelle erfolgt in drei Phasen:

1. GUI-Objekte interaktiv entwerfen

Der Entwickler versieht zum Beispiel ein Bildschirmformular mit vor- oder benutzerdefinierten Dialogfeldern und Schaltflächen.

2. Den entworfenden GUI-Objekten Ereignisse zuordnen

Einer Schaltfläche können Sie zum Beispiel das Ereignis “Mausklick“ zuordnen.

3. Reaktionen auf die zugeordneten Ereignisse programmieren

Eine Ereignisprozedur Abbrechen reagiert kann zum Beispiel auf das Ereignis “Mausklick” einer Schaltfläche ‘Abbrechen’ reagieren.

Das folgende Bild zeigt an einem Formular ein zusammengesetztes GUI-Objekt. Der Entwickler hat ihm den Namen “Personnel Information” gegeben. Es enthält seinerseits GUI-Objekte, insbesondere Bezeichnungsfelder wie “Name”, (weisse) Textfelder und die Schaltfläche OK. Die in einem Formular enthaltenen GUI-Objekte heissen Steuerelemente (engl. controls).

Das Verhalten eines Steuerelements wird vor allem durch seine benutzerdefinierten Ereignisprozeduren bestimmt. So bestimmt die Ereignisprozedur "OK_nachKlick", wie das Programm auf das Ereignis “Linksklick auf die Schaltfläche OK reagiert. Ein Ereignis ist ein Vorfall, zum Beispiel ein Mausklick, der ein Unterprogramm - eine sogenannte Ereignisprozedur - aufruft. Ereignisse sind in der Regel benutzerinduziert (zum Beispiel durch einen Klick oder die Bewegung über ein Steuerelement). Ein Ereignis kann aber auch systeminduziert sein, also ohne Zutun des Benutzers eintreten. Beispiel eines systeminduzierten Ereignisses ist das Ende einer bestimmten Zeitdauer.

Die folgende VBA-Subroutine skizziert eine Ereignisprozedur:

Sub OK_Klick()
   ...
   If Name.Text = “” Then
      MsgBox “Bitte geben Sie Ihren Namen ein”
   End If
   ...
End Sub

Wenn die Benutzerin auf die Schaltfläche OK drückt und das Eingabefeld 'Name' leer ist, dann verlangt die Ereignisprozedur OK_Klick() eine Eingabe. Der Name der Ereignisprozedur wird von den meisten Programmierumgebungen automatisch nach dem folgenden Muster vergeben: <Name des Steuerelements>_<Name des Ereignisses>, zum Beispiel OK_Klick.

Die Fallstudie QuadratDialog() veranschaulicht die Entwicklung einer einfachen Benutzerschnittstelle an einer Excel-Arbeitsmappe, die ein Quadrat der gewünschten Position und Länge ausgibt.